package ophiux.wechatpay.sdk.response;

import ophiux.wechatpay.sdk.common.parse.FieldKey;


public class OphiuxResponse {
	
	@FieldKey("return_code")
	private String return_code;//返回状态码 return_code 是 String(16) SUCCESS  SUCCESS/FAIL  此字段是通信标识，非交易标识，交易是否成功需要查看result_code来判断
	@FieldKey("return_msg")
	private String return_msg;//返回信息 return_msg 否 String(128) 签名失败  返回信息，如非空，为错误原因  签名失败  参数格式校验错误
	
	//以下字段在return_code为SUCCESS的时候有返回
	//	变量名 	字段名	必填	类型	示例值	描述
	@FieldKey("appid")
	private String appid;//	应用	appid	是	String(32)	wxd678efh567hg6787	微信开放平台审核通过的应用APPID
	@FieldKey("mch_id")
	private String mch_id;//	商户号	是	String(32)	1230000109	微信支付分配的商户号
	@FieldKey("nonce_str")
	private String nonce_str;//	随机字符串		是	String(32)	5K8264ILTKCH16CQ2502SI8ZNMTM67VS	随机字符串，不长于32位。推荐随机数生成算法
	@FieldKey("sign")
	private String sign;//	签名	是	String(32)	C380BEC2BFD727A4B6845133519F3AD6	签名，详见签名生成算法
	@FieldKey("result_code")
	private String result_code;//	业务结果	是	String(16)	SUCCESS	SUCCESS/FAIL
	@FieldKey("err_code")
	private String err_code;//	错误代码	否	String(32)	SYSTEMERROR	错误码
	@FieldKey("err_code_des")
	private String err_code_des;//	错误代码描述	否	String(128)	系统错误	结果信息描述
	
	//服务商
	@FieldKey("sub_appid")
	private String sub_appid;//子商户公众账号ID  sub_appid  否  String(32)  wx8888888888888888  微信分配的子商户公众账号ID  
	@FieldKey("sub_mch_id")
	private String sub_mch_id;//子商户号  sub_mch_id  是  String(32)  1900000109  微信支付分配的子商户号  
	
	
	/**
	 * 请求微信的完整    XML参数
	 */
	protected String requestParam;
	/**
	 * 微信返回的XML响应参数
	 */
	protected String realResponseDataSource;
	
	@Override
	public String toString() {
		return "OphiuxResponse [return_code=" + return_code + ", return_msg="
				+ return_msg + ", appid=" + appid + ", mch_id=" + mch_id
				+ ", nonce_str=" + nonce_str + ", sign=" + sign
				+ ", result_code=" + result_code + ", err_code=" + err_code
				+ ", err_code_des=" + err_code_des + ", sub_appid=" + sub_appid
				+ ", sub_mch_id=" + sub_mch_id + "]";
	}

	
	public String getSub_appid() {
		return sub_appid;
	}


	public void setSub_appid(String sub_appid) {
		this.sub_appid = sub_appid;
	}


	public String getSub_mch_id() {
		return sub_mch_id;
	}


	public void setSub_mch_id(String sub_mch_id) {
		this.sub_mch_id = sub_mch_id;
	}


	public String getReturn_code() {
		return return_code;
	}

	public void setReturn_code(String return_code) {
		this.return_code = return_code;
	}

	public String getReturn_msg() {
		return return_msg;
	}

	public void setReturn_msg(String return_msg) {
		this.return_msg = return_msg;
	}

	public String getRequestParam() {
		return requestParam;
	}

	public void setRequestParam(String requestParam) {
		this.requestParam = requestParam;
	}

	public String getRealResponseDataSource() {
		return realResponseDataSource;
	}

	public void setRealResponseDataSource(String realResponseDataSource) {
		this.realResponseDataSource = realResponseDataSource;
	}

	public String getAppid() {
		return appid;
	}

	public void setAppid(String appid) {
		this.appid = appid;
	}

	public String getMch_id() {
		return mch_id;
	}

	public void setMch_id(String mch_id) {
		this.mch_id = mch_id;
	}

	public String getNonce_str() {
		return nonce_str;
	}

	public void setNonce_str(String nonce_str) {
		this.nonce_str = nonce_str;
	}

	public String getSign() {
		return sign;
	}

	public void setSign(String sign) {
		this.sign = sign;
	}

	public String getResult_code() {
		return result_code;
	}

	public void setResult_code(String result_code) {
		this.result_code = result_code;
	}

	public String getErr_code() {
		return err_code;
	}

	public void setErr_code(String err_code) {
		this.err_code = err_code;
	}

	public String getErr_code_des() {
		return err_code_des;
	}

	public void setErr_code_des(String err_code_des) {
		this.err_code_des = err_code_des;
	}

}
